Singleton pattern

Trong công nghiệp phần mềm, mô hình Singleton là một mẫu thiết kế phần mềm để hạn chế sự khởi tạo của lớp đối tượng. Điều này rất hữu ích khi cần một đối tượng chính xác để điều phối hành động trên toàn hệ thống. Khái niệm đôi khi được khái quát hóa cho các hệ thống vận hành hiệu quả hơn khi chỉ có một đối tượng tồn tại hoặc hạn chế sự khởi tạo cho một số lượng đối tượng nhất định. Thuật ngữ này xuất phát từ khái niệm toán học của một singleton.Có một số người chỉ trích mô hình Singleton và xem nó là một mô hình chống lại hướng đối tượng bởi vì nó thường được sử dụng trong các kịch bản mà nó không có lợi, ví dụ như các hạn chế không cần thiết trong tình huống mà một trường hợp duy nhất của một class không thực sự cần thiết, Và đưa ra đối tượng chung vào một ứng dụng. Mẫu thiết kế Singleton [4] là một trong 23 mô hình thiết kế GoF nổi tiếng mô tả cách giải quyết các vấn đề thiết kế lặp lại để thiết kế linh hoạt và phần mềm hướng đối tượng dùng lại được, tức là các đối tượng dễ triển khai, thay đổi, Thử nghiệm và sử dụng lại.